package kit;

import data.ApplicationProperties;

/**
 * Class: DrumComponent.java
 * Description: Wrapper class for all pre-defined drum components.
 * @author et
 */
public class DrumComponent extends Component
{
    /**
     * Constructor for DrumComponent.
     * @param assignment - the assignment for this component.
     * @param name - the name of the component.
     * @param shortName - the short name of the component
     * @param regHit - the regular hit.
     */
	public DrumComponent(int assignment, String name, String shortName, char regHit)
	{
		super(assignment, name, shortName, regHit);
	}

    /**
     * Sets up the optional settings for a drum component.
     */
    protected void setOptionalSettings()
    {
        setLowVelocityDetection(true);
        setHighVelocityDetection(true);
        setLowVelocity(30);
        setHighVelocity(75);
        setLowHit('g');
        setHighHit('O');
        setFlamDetection(true);
        setFlamHit('f');
        setFlamTime(25);
        setChokeTime(ApplicationProperties.EMPTY_VALUE);
        setChokeDetection(false);
        setChokeHit(' ');
    }
}